#ifndef FFT_IF_H
#define FFT_IF_H


/**
 * The module provides interface to calculate fft with the help of an 
 * external library. There is no context reuse.
 * fft is defined as x_j = \sum_{k=0}^{n-1} z_k \exp(-2\pi i j k / n)
 */
#include "cdecl.h"
#include <malloc.h>

/** 
 * Invokes gsl library to calculate forward fourier transform and put 
 * data back to where it was taken from
 * @param Ew - pointer to array of complex to perform fft on
 * @param n - array size
 * @return 0 - OK
 *         1 - Out of memory
 */
int numba_cruncha_fft(complex * Ew, size_t n);


#endif
